package com.cskaoyan.com.collection.collection;

import java.util.Collection;
import java.util.Iterator;
import java.util.LinkedList;

public class DemoCollection8 {
    public static void main(String[] args) {


        // Iterator类型的对象的方法:
        //        hasNext():  问向后还可不可以遍历(问还有没有没有遍历的数据)
        //        next():     向后遍历
        //        remove():    删除刚刚遍历的数据
        Collection<String> collection = new LinkedList<>();
        collection.add("zs");
        collection.add("ls");
        collection.add("wu");
        collection.add("zl");

        //       zs     <--->    ls    <--->   wu    <--->  zl
        //                 iterator标记

//        Iterator<String> iterator = collection.iterator();
//        iterator.next();
//        iterator.remove(); // 注意删除的是源数据
//        System.out.println(collection);//   ls  wu zl


        //       zs     <--->    ls    <--->   wu    <--->  zl
        //                                iterator标记

        Iterator<String> iterator = collection.iterator();
        iterator.next();
        iterator.next();
        //       zs     <--->   wu    <--->  zl
        //                 iterator标记
        iterator.remove();
        iterator.remove();// 不可以连续的删除, 也不可以在未遍历之前删除

        System.out.println(collection);



        // ---------------------------Collection的api----------------------

        // ------------特殊作用的方法-------------------------------
//        Object[] toArray()
//        返回包含此 collection 中所有元素的数组。
//        <T> T[] toArray(T[] a)
//                返回包含此 collection 中所有元素的数组；返回数组的运行时类型与指定数组的运行时类型相同。
//        Iterator<E> iterator()
//        返回在此 collection 的元素上进行迭代的迭代器。






    }
}
